package Page.AboutUs;

import Navigation.NavigationController;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.ScrollPane;
import javafx.scene.control.TextArea;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;

import java.net.URL;

public class ResearchInstituteInfoPage {

    public static Scene getScene() {
        VBox infoPane = new VBox(10);
        infoPane.setPadding(new Insets(10));
        infoPane.setAlignment(Pos.TOP_CENTER);
        Label label = new Label("北京理工大学网络攻防对抗技术研究所");
        label.setStyle("-fx-font-size: 40px; -fx-font-weight: bold;");
        infoPane.getChildren().add(label);

        // 创建文本区域用于显示简介内容
        TextArea infoTextArea = new TextArea();
        infoTextArea.setWrapText(true);
        infoTextArea.setPrefHeight(400);
        infoTextArea.setEditable(false);  // 设置为不可编辑
        infoTextArea.setText(getInstituteInfo());

        // 使用 ScrollPane 包装 TextArea 以实现滚动
        ScrollPane scrollPane = new ScrollPane(infoTextArea);
        scrollPane.setFitToWidth(true);
        scrollPane.setFitToHeight(true);

        // 加载图片
        ImageView imageView = new ImageView();
        String photoPath = "/res/ResearchInstitute.jpg";
        URL imageUrl = ResearchInstituteInfoPage.class.getResource(photoPath);
        if (imageUrl != null) {
            Image image = new Image(imageUrl.toString());
            imageView.setImage(image);
            imageView.setFitHeight(400);
            imageView.setPreserveRatio(true);
        } else {
            System.out.println("图片未找到: " + photoPath);
        }

        // 将组件添加到布局
        VBox vbox = new VBox(10, label, imageView, scrollPane);
        vbox.setPadding(new Insets(10,160,10,160));
        vbox.setSpacing(10);
        vbox.setAlignment(Pos.TOP_CENTER);  // 设置对齐方式为居中

        HBox rootPane = new HBox(10);
        rootPane.getChildren().addAll(vbox);

        VBox mainVBox = new VBox();
        Button backButton = new Button("返回");
        backButton.setOnAction(event -> {
            NavigationController.back();
        });
        mainVBox.getChildren().add(backButton);
        mainVBox.getChildren().add(rootPane);

        return new Scene(mainVBox);
    }

    private static String getInstituteInfo() {
        return "网络攻防对抗技术研究所简介：\n\n" +
                "网络攻防对抗技术研究所成立于2024年，致力于网络安全和信息保障领域的前沿研究与技术创新。" +
                "作为一家综合性研究机构，研究所集成了最新的网络安全技术和先进的防御策略，" +
                "旨在应对日益复杂的网络威胁和攻击。\n\n" +
                "研究所下设多个专业研究中心和实验室，涵盖了网络攻防、信息加密、" +
                "恶意软件分析、网络入侵检测等多个领域。" +
                "研究所拥有一支由国内外知名专家、教授及年轻的研究人员组成的高水平科研团队，" +
                "致力于推动网络安全技术的发展和应用。\n\n" +
                "研究所的主要研究方向包括但不限于：\n" +
                "- 网络攻防：研究网络攻击技术、攻击路径、攻防对抗策略及防御机制。\n" +
                "- 信息加密：开发新的加密算法、研究加密协议的安全性及其应用。\n" +
                "- 恶意软件分析：分析恶意软件的行为、研究其传播机制并开发对策。\n" +
                "- 网络入侵检测：研究基于行为和基于签名的入侵检测系统，开发高效的检测算法。\n\n" +
                "网络攻防对抗技术研究所秉承“保障信息安全，守护网络空间”的宗旨，" +
                "积极开展基础研究和应用研究，与国内外多所知名高校、科研机构和企业建立了广泛的合作关系，" +
                "共同推进网络安全技术的进步。\n\n" +
                "我们的愿景是成为国际领先的网络安全研究机构，培养高水平的网络安全人才，" +
                "为国家网络安全保障和全球网络空间安全贡献力量。";
    }

}
